<?php
class UsuariosController extends AppController{
    public $layout = 'kennel';
    public $name = 'Usuarios';
    public $helpers=array('Html','Form');
    public $components=array('Session');
    public $uses = array('Usuario','Tipousuario');
   
   
    function index(){
	    
	    $usuarios=$this->Usuario->find('all');
	    
	    $this->set(compact('usuarios'));
	    
    }
    function insertar(){
	    if(!empty($this->data)):
	    	//debug($this->data);exit;
	    	$this->request->data['Usuario']['contrasena']=sha1($this->data['Usuario']['contrasena']);
	    	if($this->Usuario->save($this->data)):
	    		$this->Session->setFlash('Registro Con Exito!');
	    		$this->redirect(array('controller'=>'Usuarios','action'=>'index'));	
	    	endif;
	    endif;
	    
	    $tipousuarios=$this->Tipousuario->find('list',array('fields'=>array('Tipousuario.descripcion')));
	    $this->set(compact('tipousuarios'));
    }
    function editar($id=null){
    
	    $this->Usuario->id = $id;
                if (!$id) {
                    $this->Session->setFlash('No existe tal registro');
                    $this->redirect(array('action' => 'index'), null, true);
                }
                if (empty($this->data)) {
                    $this->data = $this->Usuario->read(); 
                } else {
                	if(!empty($this->data['Usuario']['nueva_contrasena'])):
                		$pass = sha1($this->data['Usuario']['nueva_contrasena']);
                		$this->request->data['Usuario']['contrasena']= $pass;
                   endif;
                    if ($this->Usuario->save($this->data)) {
                        $this->Session->setFlash('Los datos fueron modificados');
                        $this->redirect(array('action' => 'index'), null, true);
                    } else {
                        $this->Session->setFlash('no se pudo modificar!!');
                    }
                }
        $tipousuarios=$this->Tipousuario->find('list',array('fields'=>array('Tipousuario.nombre')));
	    $this->set(compact('tipousuarios'));        
    }
    function login() {
        
	    $usuario = $this->data['Usuario']['nombre'];
        $password = sha1($this->data['Usuario']['password']);
        $nombre_usuario = $this->Usuario->find('first', array('conditions' => array('Usuario.nombre_usuario' =>$usuario)));
        if (empty($nombre_usuario)):
            $this->Session->setFlash('El nombre de usuario no existe intente de nuevo por favor.');
            $this->redirect('/');
        else:
            if ($password == $nombre_usuario['Usuario']['contrasena']):
                $id = $nombre_usuario['Usuario']['id'];
                $nombre = $nombre_usuario['Usuario']['nombre_usuario'];
                $tipo_id = $nombre_usuario['Usuario']['tipousuario_id']; 
                $this->Session->write("usuario_id", $id);
                $this->Session->write("nombre", $nombre);
                $this->Session->write("tipousuario_id", $tipo_id);
                $this->Session->setFlash('Ingreso con exito');
                $this->redirect(array('controller' => 'principal', 'action' => 'index'));
            else:
                $this->Session->setFlash('La contrase&ntilde;a no coincide, por favor intente de nuevo.');
                $this->redirect('/');
            endif;
        endif;
    }
    function salir(){
      $this->Session->delete('nombre');
      $this->Session->delete('usuario_id');      
      $this->Session->delete('tipousuario_id');      
      $this->redirect('/');
    }
}
?>